<?php
if (!defined('BASEPATH'))
    exit('No direct script access allowed');

class pengiriman extends CI_Controller
{
    
    /**
     * Ini merupakan Sebuah controller untuk menghubungkan view pengiriman dan model pengiriman
     * Semua CRUD yang berhubungan dengan pengiriman memanggil controller ini
     * Created by Mukhamad Faiz Fanani dan Idam Pradana Mahmudah (Jurusan Sistem Informasi ITS)
     * V.1.0
     */
    public function __construct()
    {
        parent::__construct();
        $this->load->helper(array(
            'form',
            'url'
        ));
        $this->load->library('session');
        $this->load->model('pengiriman_model');
       // $this->load->model('negara_model');
        if ($this->session->userdata('username') == NULL) {
            redirect('login');
        }
        
    }
    public function index()
    {
        
        redirect('pengiriman/daftar_pengiriman');
    }
    
    //fungsi ini untuk menampilkan daftar pengiriman
    public function daftar_pengiriman()
    {
        
        $data['menu']     = 'pengiriman';
        $content['isi']   = $this->pengiriman_model->get_data_m_pengiriman();
		
        $data['sub_menu'] = 'daftar_pengiriman';
        $data['isi']      = $this->load->view('daftar_pengiriman', $content, true); // null itu digunakan kalau tidak ada data, kalau ada data menggunkaan array yang nantinya datanya dipanggil di view
        
        $this->load->view('main', $data);
    }
    
    // fungsi ini untuk menampilkan form tambah pengiriman
    public function tambah_pengiriman()
    {
        $data['menu']       = 'pengiriman';
        $data['sub_menu']   = 'tambah_pengiriman';
        $content['barang'] = $this->pengiriman_model->get_data_barang();
        $content['konsumen']  = $this->pengiriman_model->get_data_konsumen();
        $content['status']  = 'new';
        $data['isi']        = $this->load->view('form_pengiriman', $content, true); // null itu digunakan kalau tidak ada data, kalau ada data menggunkaan array yang nantinya datanya dipanggil di view
        $data['disable']    = true;
        $this->load->view('main', $data);
    }
    // fungsi ini untuk memasukkan data pengiriman baru kedalam database
    public function tambah()
    {
            //mendapatkan no_urut
		$no_urut=$this->pengiriman_model->getidpesan()->row()->id_pengiriman+1;
		$no_pengiriman="psn_bw_".$no_urut;
		$harga_satuan_barang;
		$jenis_pembayaran=$this->input->post('id_jenis_pembayaran');
		if($jenis_pembayaran==1){
				$harga_satuan_barang=$this->pengiriman_model->descbarang($this->input->post('id_barang'))->row()->harga_tunai;

		}
		
	else if($jenis_pembayaran==2){
			$harga_satuan_barang=$this->pengiriman_model->descbarang($this->input->post('id_barang'))->row()->harga_kredit_satuan;

	}
	else{
				$harga_satuan_barang=$this->pengiriman_model->descbarang($this->input->post('id_barang'))->row()->harga_kredit_grosir;

	}
	
	$angsuran=$this->pengiriman_model->descbarang($this->input->post('id_barang'))->row()->angsuran;

	
        $datapengiriman = array(
			'nomer_pengiriman' => $no_pengiriman,
			'tanggal' => date('d-m-Y'),
			 'no_konsumen' => $this->input->post('nomer_konsumen'),
			'no_karyawan' => $this->session->userdata('nomer_karyawan'),
            'id_barang' => $this->input->post('id_barang'),
			'jenis_pembayaran' => $this->input->post('id_jenis_pembayaran'),
			'angsuran' => $angsuran,
			'kuantitas' => $this->input->post('jumlah_pengiriman'),
			'harga_satuan' => $harga_satuan_barang,
			'jumlah' => ($this->input->post('jumlah_pengiriman')*$harga_satuan_barang)
                  
			

        );
		
		
		
        $this->pengiriman_model->insertpemesanan($datapengiriman);
		// get mak pengiriman
		/*$this->pengiriman_model->getidpesan()->row()->no_pesan;
		 $datapengiriman = array(
            'id_barang' => $this->input->post('id_barang'),
            'nomer_konsumen' => $this->input->post('nomer_konsumen'),
			'nomer_konsumen' => $this->input->post('nomer_konsumen'),
			'angsuran' => $this->input->post('jumlah_angsuran'),
			'pengiriman' => $this->input->post('jumlah_pengiriman'),
            
            
			

        );
		
		
		$this->pengiriman_model->insertpemesanan($datapengiriman);
		*/
        redirect('pengiriman');
        
        
    }
    
    // fungsi ini untuk melakukan pengubahan pengiriman
    public function edit_pengiriman($id)
    {
        $data['menu']       = 'pengiriman';
        $data['sub_menu']   = 'tambah_pengiriman';
        $content['pengiriman'] = $this->pengiriman_model->selectone($id);
        $content['negara']  = $this->negara_model->get_data_m_negara();
        $content['status']  = 'edit';
        $data['isi']        = $this->load->view('form_pengiriman', $content, true); // null itu digunakan kalau tidak ada data, kalau ada data menggunkaan array yang nantinya datanya dipanggil di view
        $data['disable']    = true;
        $this->load->view('main', $data);
    }
    // fungsi ini untuk melakukan pengubahan pengiriman yang ada di database
    public function update($id)
    {
        
        $data = array(
            'nama_pengiriman' => $this->input->post('pengiriman'),
            'id_negara' => $this->input->post('id_negara')
            
            
        );
        
        
        $this->pengiriman_model->update($data, $id);
		
		// mengambil data hasil pesanan
		$hasil=$this->pengiriman_model->selectone($id);
		
		
		$this->pengiriman_model->insertpenjualan($data, $id);
        
        redirect('pengiriman');
        
        
    }
	 // untuk memvalidasi pengiriman
	  public function validate($id)
    {
        
        $data = array(
            'status' => 1,
            
            
            
        );
		
		/* get id maks penjualan
		$id_penjualan=$this->pengiriman_model->maksid->row()->maksid;
         $insert_penjualan = array(
		 	'id_penjualan'=>$id_penjualan,
			'tanggal'=>date('d-m-Y'),
            'status' => 0,
			'no_pengiriman' => $this->pengiriman_model->selectone($id)->row()->no_pengiriman,
			'tanggal' => date('d-m-Y'),
            
        );
        */
        $this->pengiriman_model->update($data, $id);
		
		//$this->pengiriman_model->update($insert_penjualan);
        
         $data['menu']     = 'pengiriman';
        $content['isi']   = $this->pengiriman_model->get_data_m_pengiriman();
		$content['notif']     = 'Barang sudah terkirim, Pembayaran belum validasi';
        $data['sub_menu'] = 'daftar_pengiriman';
        $data['isi']      = $this->load->view('daftar_pengiriman', $content, true); // null itu digunakan kalau tidak ada data, kalau ada data menggunkaan array yang nantinya datanya dipanggil di view
        
        $this->load->view('main', $data);
        
    }
    
    //fungsi ini digunakan untuk melakukan penghapuskan data pengiriman
    public function delete($id)
    {
        $this->pengiriman_model->delete($id);
        $data['menu'] = 'pengiriman';
        
        $content['isi']    = $this->pengiriman_model->get_data_m_pengiriman();
        $content['delete'] = 'Data Berhasil Dihapus';
        $data['sub_menu']  = 'daftar_pengiriman';
        $data['isi']       = $this->load->view('daftar_pengiriman', $content, true); // null itu digunakan kalau tidak ada data, kalau ada data menggunkaan array yang nantinya datanya dipanggil di view
        
        $this->load->view('main', $data);
    }
}

/* End of file welcome.php */
/* Location: ./application/controllers/welcome.php */
